package com.lvcoding.oauth2.resource.jwt.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.oauth2.config.annotation.web.configuration.EnableResourceServer;
import org.springframework.security.oauth2.config.annotation.web.configuration.ResourceServerConfigurerAdapter;
import org.springframework.security.oauth2.config.annotation.web.configurers.ResourceServerSecurityConfigurer;
import org.springframework.security.oauth2.provider.token.*;
import org.springframework.security.oauth2.provider.token.store.JwtAccessTokenConverter;
import org.springframework.security.oauth2.provider.token.store.JwtTokenStore;

/**
 * @author wuyanshen
 * @description 资源服务器配置
 * @date 2022-02-17 下午5:01
 */
@EnableResourceServer // 开启资源服务器
@Configuration
public class ResourceServerConfig extends ResourceServerConfigurerAdapter {

    // @Override
    // public void configure(HttpSecurity http) throws Exception {
    //     // @formatter:off
    //     http
    //             .authorizeRequests()
    //             .antMatchers("/error").permitAll()
    //             .anyRequest().authenticated();
    //     // @formatter:on
    // }
    //
    //
    // @Bean
    // public JwtAccessTokenConverter jwtAccessTokenConverter() {
    //     // jwt的token必须配置
    //     JwtAccessTokenConverter jwtAccessTokenConverter = new JwtAccessTokenConverter();
    //     jwtAccessTokenConverter.setSigningKey("xxxtestxxx");
    //     return jwtAccessTokenConverter;
    // }
    //
    // @Bean
    // public TokenStore tokenStore() {
    //     // jwt的token必须配置
    //     return new JwtTokenStore(jwtAccessTokenConverter());
    // }
    //
    //
    // @Override
    // public void configure(ResourceServerSecurityConfigurer resources) throws Exception {
    //     DefaultTokenServices defaultTokenServices = new DefaultTokenServices();
    //     defaultTokenServices.setTokenStore(tokenStore());
    //     resources.tokenServices(defaultTokenServices);
    // }

}
